-
-
Notifications
You must be signed in to change notification settings - Fork 33.7k
deps: update V8 to 14.2 #60111
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
deps: update V8 to 14.2 #60111
Conversation
|
Review requested:
|
|
Well it looks like we are hitting the first issue related to the drop of GCC support in V8 (or GCC 12 is just too old). |
I noticed the constexpr issue and another gcc compile issue and opened up a CL last week: https://chromium-review.googlesource.com/c/v8/v8/+/6987408. |
|
Tests with require('esm') in cycles are failing in debug mode, cc @joyeecheung |
|
#60111 (comment) is still happening. @legendecas The DCHECK is from you in v8/v8@8c63812 |
|
https://chromium-review.googlesource.com/c/v8/v8/+/7031498 should fix the DCHECK failure. |
Improve DCHECKs that requires a module to be linked. This includes kLinked, kEvaluated, kEvaluatingAsync, kErrored and the missing kEvaluating. kEvaluating can be found when a cyclic module is been evaluated synchronously. Refs: nodejs/node#60111 (comment) Change-Id: Ie0b9be22f2d3b8208571d8b419da3505b9f57b65 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7031498 Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Chengzhong Wu <cwu631@bloomberg.net> Cr-Commit-Position: refs/heads/main@{#103203}
Major V8 updates are usually API/ABI incompatible with previous versions. This commit adapts NODE_MODULE_VERSION for V8 14.2. Refs: https://github.com/nodejs/CTC/blob/master/meetings/2016-09-28.md
PR-URL: nodejs#54077 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
It's causing linker errors with node.lib in node-gyp and potentially breaks other 3rd party tools PR-URL: nodejs#56238 Refs: nodejs#55784 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
GCC emits warnings because of the trailing backslashes. PR-URL: nodejs#58070 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
PR-URL: nodejs#58070 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
illumos pointers are VA48, can allocate from the top of the 64-bit range as well. PR-URL: nodejs#59805 Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
In illumos, madvise(3C) now takes `void *` for its first argument post-illumos#14418, but uses `caddr_t` pre-illumos#14418. This fix will detect if the illumos mman.h file in use is pre-or-post-illumos#14418 so builds can work either way. PR-URL: nodejs#58237 Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Original commit message:
[runtime] Fastcase for empty getOwnPropertySymbols()
Since symbols are not enumerable we can rule them out in case all
properties are in the enum cache.
Bug: 447154198
Change-Id: Ib2d58b67e5058d98323fcebaef3daba88c6304b5
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6983286
Commit-Queue: Olivier Flückiger <olivf@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Auto-Submit: Olivier Flückiger <olivf@chromium.org>
Cr-Commit-Position: refs/heads/main@{#102878}
Refs: v8/v8@f93055f
PR-URL: nodejs#60105
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Original commit message:
Fix build on gcc
This commit fixes two issues
1.
```
In file included from ../../src/compiler/turboshaft/assembler.h:37,
from ../../src/wasm/turboshaft-graph-interface.h:13,
from ../../src/wasm/function-compiler.cc:20:
../../src/compiler/turboshaft/builtin-call-descriptors.h:26:55: error: declaration of 'static constexpr v8::internal::compiler::turboshaft::detail::IndexTag<1> v8::internal::compiler::turboshaft::builtin::BigIntAdd::Arguments::index_counter(v8::internal::compiler::turboshaft::detail::IndexTag<1>)' changes meaning of 'index_counter' [-fpermissive]
```
GCC is more strict on accessing the fields from a inner struct. The fix
was to wrap the base declarations in a struct and have Arguments struct
inheirt from the base.
2. In maglev-ir.h and maglev-range-analysis.h fixed up `error: call to
non-'constexpr'` issues.
Change-Id: I175700665c7bbb4f07588e9cac3d55d9afce44d0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6987408
Reviewed-by: Jakob Linke <jgruber@chromium.org>
Commit-Queue: Jakob Linke <jgruber@chromium.org>
Reviewed-by: Milad Farazmand <mfarazma@ibm.com>
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Cr-Commit-Position: refs/heads/main@{#103041}
Refs: v8/v8@fed4744
Co-authored-by: Michaël Zasso <targos@protonmail.com>
Original commit message:
[objects] improve module linked status DCHECKs
Improve DCHECKs that requires a module to be linked. This includes
kLinked, kEvaluated, kEvaluatingAsync, kErrored and the missing
kEvaluating. kEvaluating can be found when a cyclic module is been
evaluated synchronously.
Refs: nodejs#60111 (comment)
Change-Id: Ie0b9be22f2d3b8208571d8b419da3505b9f57b65
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7031498
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Chengzhong Wu <cwu631@bloomberg.net>
Cr-Commit-Position: refs/heads/main@{#103203}
Refs: v8/v8@ff34ae2
|
/cc @nodejs/v8-update @nodejs/tsc |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
RSLGTM
PR-URL: #60111 Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
PR-URL: #60111 Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Major V8 updates are usually API/ABI incompatible with previous versions. This commit adapts NODE_MODULE_VERSION for V8 14.2. Refs: https://github.com/nodejs/CTC/blob/master/meetings/2016-09-28.md PR-URL: #60111 Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Original commit message:
Fix build on gcc
This commit fixes two issues
1.
```
In file included from ../../src/compiler/turboshaft/assembler.h:37,
from ../../src/wasm/turboshaft-graph-interface.h:13,
from ../../src/wasm/function-compiler.cc:20:
../../src/compiler/turboshaft/builtin-call-descriptors.h:26:55: error: declaration of 'static constexpr v8::internal::compiler::turboshaft::detail::IndexTag<1> v8::internal::compiler::turboshaft::builtin::BigIntAdd::Arguments::index_counter(v8::internal::compiler::turboshaft::detail::IndexTag<1>)' changes meaning of 'index_counter' [-fpermissive]
```
GCC is more strict on accessing the fields from a inner struct. The fix
was to wrap the base declarations in a struct and have Arguments struct
inheirt from the base.
2. In maglev-ir.h and maglev-range-analysis.h fixed up `error: call to
non-'constexpr'` issues.
Change-Id: I175700665c7bbb4f07588e9cac3d55d9afce44d0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6987408
Reviewed-by: Jakob Linke <jgruber@chromium.org>
Commit-Queue: Jakob Linke <jgruber@chromium.org>
Reviewed-by: Milad Farazmand <mfarazma@ibm.com>
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Cr-Commit-Position: refs/heads/main@{#103041}
Refs: v8/v8@fed4744
Co-authored-by: Michaël Zasso <targos@protonmail.com>
PR-URL: #60111
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Original commit message:
[objects] improve module linked status DCHECKs
Improve DCHECKs that requires a module to be linked. This includes
kLinked, kEvaluated, kEvaluatingAsync, kErrored and the missing
kEvaluating. kEvaluating can be found when a cyclic module is been
evaluated synchronously.
Refs: #60111 (comment)
Change-Id: Ie0b9be22f2d3b8208571d8b419da3505b9f57b65
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7031498
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Chengzhong Wu <cwu631@bloomberg.net>
Cr-Commit-Position: refs/heads/main@{#103203}
Refs: v8/v8@ff34ae2
PR-URL: #60111
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
|
Landed in 520d827...f819aec |
Original commit message:
Fix build on gcc
This commit fixes two issues
1.
```
In file included from ../../src/compiler/turboshaft/assembler.h:37,
from ../../src/wasm/turboshaft-graph-interface.h:13,
from ../../src/wasm/function-compiler.cc:20:
../../src/compiler/turboshaft/builtin-call-descriptors.h:26:55: error: declaration of 'static constexpr v8::internal::compiler::turboshaft::detail::IndexTag<1> v8::internal::compiler::turboshaft::builtin::BigIntAdd::Arguments::index_counter(v8::internal::compiler::turboshaft::detail::IndexTag<1>)' changes meaning of 'index_counter' [-fpermissive]
```
GCC is more strict on accessing the fields from a inner struct. The fix
was to wrap the base declarations in a struct and have Arguments struct
inheirt from the base.
2. In maglev-ir.h and maglev-range-analysis.h fixed up `error: call to
non-'constexpr'` issues.
Change-Id: I175700665c7bbb4f07588e9cac3d55d9afce44d0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6987408
Reviewed-by: Jakob Linke <jgruber@chromium.org>
Commit-Queue: Jakob Linke <jgruber@chromium.org>
Reviewed-by: Milad Farazmand <mfarazma@ibm.com>
Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
Cr-Commit-Position: refs/heads/main@{#103041}
Refs: v8/v8@fed4744
Co-authored-by: Michaël Zasso <targos@protonmail.com>
PR-URL: nodejs#60111
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Original commit message:
[objects] improve module linked status DCHECKs
Improve DCHECKs that requires a module to be linked. This includes
kLinked, kEvaluated, kEvaluatingAsync, kErrored and the missing
kEvaluating. kEvaluating can be found when a cyclic module is been
evaluated synchronously.
Refs: nodejs#60111 (comment)
Change-Id: Ie0b9be22f2d3b8208571d8b419da3505b9f57b65
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7031498
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Chengzhong Wu <cwu631@bloomberg.net>
Cr-Commit-Position: refs/heads/main@{#103203}
Refs: v8/v8@ff34ae2
PR-URL: nodejs#60111
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
No notable changes in this version.